// eslint-disable-next-line no-undef
const {app, BrowserWindow, ipcMain} = require('electron')
// eslint-disable-next-line no-undef
const path = require('path')


// eslint-disable-next-line no-undef
const NODE_ENV = process.env.NODE_ENV

const createWindow = () => {
    // 创建浏览器窗口
    const mainWindow = new BrowserWindow({
        minWidth: 1600,
        minHeight: 900,
        x: 100,
        y:100,
        transparent: true,
        backgroundColor: '#00000000',
        frame: false,
        webPreferences: {
            nodeIntegration: true,
            // eslint-disable-next-line no-undef
            preload: path.join(__dirname, 'preload.js')
        }
    })

    mainWindow.setAspectRatio(1600 / 900)

    //登录窗口最小化
    ipcMain.on('window-min', function () {
        mainWindow.minimize();
    })


    //关闭窗口
    ipcMain.on('window-close', function () {
        mainWindow.close();
    })


    // 加载 index.html
    // mainWindow.loadFile('dist/index.html') 将该行改为下面这一行，加载url
    mainWindow.loadURL(
        NODE_ENV === 'development'
            ? 'http://localhost:5173'
            // eslint-disable-next-line no-undef
            : `file://${path.resolve(__dirname, '../dist/index.html')}`
    );

    // 打开开发工具
    if (NODE_ENV === "development") {
        mainWindow.webContents.openDevTools()
    }

}

app.whenReady().then(() => {
    createWindow()

    app.on('activate', function () {
        // 通常在 macOS 上，当点击 dock 中的应用程序图标时，如果没有其他
        // 打开的窗口，那么程序会重新创建一个窗口。
        if (BrowserWindow.getAllWindows().length === 0) createWindow()
    })
})

app.on('window-all-closed', function () {
    // eslint-disable-next-line no-undef
    if (process.platform !== 'darwin') app.quit()
})